/////////////////////////////////////////////////////////////////////

Version History

v0.58b
6:09 PM 15/03/2002
- fixed an inevitable bug with the tweak inertia knob not working

v0.57b
2:39 PM 14/03/2002
- added the long awaited tweak inertia knob

v0.56b
1:04 PM 08/03/2002
- did some major optimizations, including making internal range -1.0 to 1.0
- removed all pointer access and uses arrays instead for speed
- overhauled some overdrives
- fixed multiplication mix modes
- separated antialias filter from filter struct for speed reasons
- changed default osc vol to 100%
- fixed divide mix mode to max at 200%

v0.55b
6:09 PM 05/03/2002
- fixed all lfos that i forgot to update to new sync method
- fixed vcf lfo depth display
- added more vcf routings ( sorry if you have to change it in your settings )
- fixed it so that syncs are polled each seq tick

v0.54b
1:11 PM 05/03/2002
- increased accuracy of lfo wrapping
- fixed sync times and expanded amounts
- fixed parameter update rate to be correct (it was updating on 33 samples, not the desired 32)
- fixed display of lfo rates to be more accurate
- recoded arpeggio rate code to be more accurate
- added more arpeggio sync rates so it behaves like lfos
- did some more optimizing

v0.53b
3:35 PM 04/03/2002
- fixed tremolo depth-it was behaving very weird
- fixed zipper noise on vca
- increased resolution of source waveforms to float for greater speed and accuracy
- removed unused portion of source waveforms

v0.52b
1:40 PM 03/03/2002
- made 0f00 the cancel command and ignore 0000
- fixed it so that envelopes update per sample to get rid of vca zipper noise

v0.51b
12:41 PM 03/03/2002
- improved interpolation algorithm to provide better antialiasing
- made antialias filter reset when switched to "off"
- did some major performance optimizations (f2i)
- made oscilator phase cycle much more accurate

v0.45b-0.50b
- internal versions
- fixed bug with vcf mix modes not being described correctly
- added ksn's arpeggio patterns
- switched to new save method
- fixed envelope bypass function
- made cutoff range wider

v0.44b
2:13 PM 28/02/2002
- made it so the splash message doesn't pop up on reinit
- added some track effects, and fixed some broken ones
- song sync rate initializes correctly on new synth

v0.43b
6:33 PM 26/02/2002
- fixed bug where ultralight interpolate was screwey
- now syncs waveform phases on noteon if portamento is off and no note playing
- fixed bug where arpeggios stopped on short envelopes

v0.42b
2:31 AM 26/02/2002
- added 'ultralight' version
- made it so that filters don't reset if knob touched when they don't need to
- fixed bug where vcf 2 crashed due to bad lfo wave pointer
- fixed bug where tweaking global tune parameter didn't affect realtime
- fixed bug where tweaking osc volume parameters didn't affect realtime
- fixed bug where silence waveform wasn't silent
- removed silent waveform from lfo selections

v0.41b
1:17 PM 25/02/2002
- added 'light' version
- fixed a bug with using more than 2 oscs - noteoffs were writing data to bad parts of ram
- fixed width knob, works in correct direction
- limited feedback on moog type a to 128x max so it doesn't explode any more on full res
- added real white and brown noise generators for waveforms so you don't have to stick with crappy looped noise
- made it so osc 1 cannot use multiplication mix modes
- changed redundant osc mix mode *- to /

v0.40b
10:17 PM 16/02/2002
- initial public release

/////////////////////////////////////////////////////////////////////

BUG LIST

- moog vcf B still blows up all the time

TODO LIST

- could optimize more filters by removing from filter_struct and inlining with track struct
- optimize antialias code some more
- add morphing synth version
- add syncs to things other than lfos (adsr, porta, inertia, etc.)?
- synth is hardcoded to 44.1khz, should i make it flexible?
- credits
- docs

/////////////////////////////////////////////////////////////////////